}
static void
-gtk_grid_remove (GtkContainer *container,
- GtkWidget *child)
+gtk_grid_real_remove (GtkContainer *container,
+ GtkWidget *child)
{
GtkGrid *grid = GTK_GRID (container);
gboolean was_visible;
object_class->set_property = gtk_grid_set_property;
container_class->add = gtk_grid_add;
- container_class->remove = gtk_grid_remove;
+ container_class->remove = gtk_grid_real_remove;
container_class->forall = gtk_grid_forall;
container_class->child_type = gtk_grid_child_type;
return NULL;
}
+/**
+ * gtk_grid_remove:
+ * @grid: a #GtkGrid
+ * @child: the child widget to remove
+ *
+ * Removes a child from @grid, after it has been added
+ * with gtk_grid_attach() or gtk_grid_attach_next_to().
+ */
+void
+gtk_grid_remove (GtkGrid *grid,
+ GtkWidget *child)
+{
+ g_return_if_fail (GTK_IS_GRID (grid));
+ g_return_if_fail (GTK_IS_WIDGET (child));
+ g_return_if_fail (gtk_widget_get_parent (child) == grid);
+
+ gtk_widget_unparent (child);
+}
+
/**
* gtk_grid_insert_row:
* @grid: a #GtkGrid
gint left,
gint top);
GDK_AVAILABLE_IN_ALL
+void gtk_grid_remove (GtkGrid *grid,
+ GtkWidget *child);
+
+GDK_AVAILABLE_IN_ALL
void gtk_grid_insert_row (GtkGrid *grid,
gint position);
GDK_AVAILABLE_IN_ALL
guint gtk_grid_get_column_spacing (GtkGrid *grid);
GDK_AVAILABLE_IN_ALL
void gtk_grid_set_row_baseline_position (GtkGrid *grid,
- gint row,
- GtkBaselinePosition pos);
+ gint row,
+ GtkBaselinePosition pos);
GDK_AVAILABLE_IN_ALL
GtkBaselinePosition gtk_grid_get_row_baseline_position (GtkGrid *grid,
- gint row);
+ gint row);
GDK_AVAILABLE_IN_ALL
void gtk_grid_set_baseline_row (GtkGrid *grid,
- gint row);
+ gint row);
GDK_AVAILABLE_IN_ALL
gint gtk_grid_get_baseline_row (GtkGrid *grid);